package com.kuang.filter;

import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;

import javax.servlet.*;
import java.io.IOException;

public class CharacterEncodingFilter implements Filter {
    //web服务器启动的时候，就已经初始化了 随时等待过滤对象
    public void init(FilterConfig filterConfig) throws ServletException {
        System.out.println("CharacterEncodingFilter已经初始化好了！");
    }

    //chain

    /**
     * 1.过滤中的所有代码，在过滤特定请求的时候都会执行
     * 2.必须要让过滤器继续同行，也就是做dofilter这个东西 死的
     */
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=UTF-8");

        System.out.println("CharacterEncodingFilter执行之前的情况======");
        chain.doFilter(request,response);//让我们的请求继续走，如果不写，我们的请求就被拦截停止了
        System.out.println("CharacterEncodingFilter执行之后的情况======");
    }

    //web服务器关闭的时候，过滤器就销毁了
    public void destroy() {
        System.out.println("CharacterEncodingFilter已经被销毁了！");
    }
}
